import { Module, forwardRef } from '@nestjs/common';
import { MongooseModule } from '@nestjs/mongoose';
import { UserService } from './user.service';
import { User, UserSchema } from './schemas/user.schema';
import { UserController } from './user.controller';
import { MailModule } from '../mail/mail.module';
import { VerificationModule } from '../verification/verification.module';
import { AuthModule } from '../auth/auth.module';

@Module({
  // imports 用来导入其他模块，供当前模块使用
  imports: [
    MongooseModule.forFeature([{ name: User.name, schema: UserSchema }]),
    forwardRef(() => AuthModule),
    MailModule,
    VerificationModule,
  ],
  // controllers 用来注册控制器，供当前模块使用
  controllers: [UserController],
  // providers 用来注册服务，供当前模块使用
  providers: [UserService],
  // exports 用来导出服务，供其他模块使用
  exports: [UserService],
})
export class UserModule { } 